As is well known, a non-volatile memory is able to continuously retain data after the supplied power is interrupted. Generally, after the non-volatile memory leaves the factory, the user may program the non-volatile memory in order to record data into the non-volatile memory.
According to the number of times the non-volatile memory is programmed, the non-volatile memories may be classified into a multi-time programmable memory (also referred as a MTP memory), a one time programmable memory (also referred as an OTP memory) and a mask read only memory (also referred as a Mask ROM).
Generally, the MTP memory can be programmed many times, and the stored data of the MTP memory can be modified many times. On the contrary, the OTP memory can be programmed once. After the OTP memory is programmed, the stored data cannot be modified. Moreover, after the Mask ROM leaves the factory, all stored data have been recorded therein. The user is only able to read the stored data from the Mask ROM, but is unable to program the Mask ROM.
Moreover, depending on the characteristics, the OTP memories may be classified into two types, i.e. a fuse-type OTP memory and an antifuse-type OTP memory. Before a memory cell of the fuse-type OTP memory is programmed, the memory cell has a low-resistance storage state. After the memory cell of the fuse-type OTP memory is programmed, the memory cell has a high-resistance storage state.
On the other hand, the memory cell of the antifuse-type OTP memory has the high-resistance storage state before programmed, and the memory cell of the antifuse-type OTP memory has the low-resistance storage state after programmed.